const fs = require('fs').promises;
const path = require('path');

const DATA_DIR = path.join(__dirname, '../data');

// 确保数据目录存在
async function ensureDataDir() {
  try {
    await fs.access(DATA_DIR);
  } catch {
    await fs.mkdir(DATA_DIR, { recursive: true });
  }
}

// 领养案例数据
const adoptionCases = [
  {
    id: 1,
    name: 'coco的领养案例',
    image: '/images/20230417/1681740318301726.jpg',
    status: '已成功领养',
    adopter: '李小姐',
    age: '2岁',
    gender: '雌性',
    breed: '金毛寻回犬',
    health: '健康良好，已绝育',
    character: '性格温顺，喜欢和小朋友玩耍',
    description: 'Coco是一只非常可爱的金毛犬，曾经是一只流浪狗，在我们的救助中心生活了6个月。她性格温顺，特别喜欢和小朋友玩耍，是一个很好的家庭伴侣。',
    rescueDate: '2023-01-15',
    adoptionDate: '2023-04-17',
    photos: [
      '/images/20230417/1681740318301726.jpg',
      '/images/20220716/1657971345150650.jpg',
      '/images/20220716/1657971420709109.jpg'
    ]
  },
  {
    id: 2,
    name: '小雪',
    image: '/images/20230423/1682256503357127.jpg',
    status: '已成功领养',
    adopter: '王先生',
    age: '1.5岁',
    gender: '雌性',
    breed: '中华田园犬',
    health: '健康良好',
    character: '活泼好动，聪明伶俐',
    description: '小雪是一只非常聪明的小狗，学习能力很强，能很快适应新环境。',
    rescueDate: '2023-02-10',
    adoptionDate: '2023-04-20',
    photos: [
      '/images/20230423/1682256503357127.jpg'
    ]
  },
  {
    id: 3,
    name: '大黄',
    image: '/images/20230423/1682256531398881.jpg',
    status: '等待领养',
    age: '3岁',
    gender: '雄性',
    breed: '中华田园犬',
    health: '健康良好，已绝育',
    character: '忠诚护主，适合看家',
    description: '大黄是一只非常忠诚的狗狗，对主人忠心耿耿，是很好的看家犬。',
    rescueDate: '2023-03-05',
    photos: [
      '/images/20230423/1682256531398881.jpg'
    ]
  },
  {
    id: 4,
    name: '米奇',
    image: '/images/20230423/1682257047659615.jpg',
    status: '已成功领养',
    adopter: '张女士',
    age: '1岁',
    gender: '雄性',
    breed: '比格犬',
    health: '健康良好',
    character: '好奇心强，活泼可爱',
    description: '米奇是一只非常可爱的比格犬，好奇心很强，喜欢探索新事物。',
    rescueDate: '2023-01-20',
    adoptionDate: '2023-04-22',
    photos: [
      '/images/20230423/1682257047659615.jpg'
    ]
  },
  {
    id: 5,
    name: '小白',
    image: '/images/20230423/1682256552216745.jpg',
    status: '等待领养',
    age: '2.5岁',
    gender: '雌性',
    breed: '萨摩耶',
    health: '健康良好',
    character: '温顺友好，喜欢与人亲近',
    description: '小白是一只美丽的萨摩耶，毛发洁白如雪，性格温顺友好。',
    rescueDate: '2023-02-28',
    photos: [
      '/images/20230423/1682256552216745.jpg'
    ]
  },
  {
    id: 6,
    name: '黑妞',
    image: '/images/20230423/1682256597498996.jpg',
    status: '救助康复中',
    age: '4岁',
    gender: '雌性',
    breed: '拉布拉多',
    health: '正在康复治疗中',
    character: '温顺稳重，适合老人',
    description: '黑妞是一只非常稳重的拉布拉多，目前正在接受康复治疗。',
    rescueDate: '2023-04-01',
    photos: [
      '/images/20230423/1682256597498996.jpg'
    ]
  }
];

// 宠物知识文章
const knowledgeArticles = [
  {
    id: 7,
    title: '猫为什么会炸毛',
    date: '2025-09-13',
    category: 'knowledge',
    author: '宠物专家',
    summary: '了解猫咪炸毛的原因和应对方法',
    content: `猫咪炸毛是一种常见的行为，通常表示它们感到恐惧、愤怒或兴奋。当猫咪感到威胁时，它们会让毛发竖起来，使自己看起来更大，以威慑潜在的威胁。

主要原因包括：
1. 恐惧或惊吓：突然的声音、陌生人或动物
2. 愤怒或攻击性：领域争夺或保护行为
3. 兴奋或游戏：特别是年轻的猫咪
4. 寒冷：为了保温而让毛发蓬松

应对方法：
- 保持冷静，不要强迫接近
- 给猫咪足够的空间
- 用温和的声音安抚
- 避免突然的动作`,
    tags: ['猫咪行为', '宠物护理', '动物心理'],
    readCount: 1250,
    likeCount: 89
  },
  {
    id: 8,
    title: '如何训练小狗上厕所',
    date: '2025-09-13',
    category: 'knowledge',
    author: '训练师小李',
    summary: '系统性训练幼犬定点排便的方法',
    content: `训练小狗上厕所需要耐心和一致性。以下是详细的训练步骤：

1. 建立规律的作息时间
- 固定喂食时间
- 固定散步时间
- 观察狗狗的排便信号

2. 选择合适的地点
- 选择通风良好的固定地点
- 铺设专用垫子或报纸
- 保持地点清洁

3. 及时奖励
- 在正确地点排便后立即奖励
- 使用零食或夸奖
- 保持一致的奖励方式

4. 避免惩罚
- 不要在事后惩罚
- 发现错误行为时及时纠正
- 保持正面的训练态度`,
    tags: ['狗狗训练', '幼犬教育', '生活习惯'],
    readCount: 2100,
    likeCount: 156
  },
  {
    id: 9,
    title: '宠物疫苗接种指南',
    date: '2025-09-13',
    category: 'knowledge',
    author: '兽医王博士',
    summary: '详细介绍宠物疫苗接种的时间安排和注意事项',
    content: `宠物疫苗接种是预防疾病的重要措施，以下是详细的接种指南：

幼犬疫苗计划：
- 6-8周：第一针多联疫苗
- 10-12周：第二针多联疫苗
- 14-16周：第三针多联疫苗 + 狂犬疫苗
- 以后每年加强一针

幼猫疫苗计划：
- 8-10周：第一针三联疫苗
- 12周：第二针三联疫苗
- 16周：第三针三联疫苗 + 狂犬疫苗
- 以后每年加强一针

注意事项：
- 接种前确保宠物健康
- 接种后观察不良反应
- 按时完成加强免疫
- 保存好疫苗记录`,
    tags: ['疫苗接种', '健康管理', '预防医学'],
    readCount: 1800,
    likeCount: 134
  },
  {
    id: 10,
    title: '宠物营养均衡饮食',
    date: '2025-09-13',
    category: 'knowledge',
    author: '营养师小张',
    summary: '科学搭配宠物饮食，确保营养均衡',
    content: `营养均衡的饮食对宠物健康至关重要：

基本营养需求：
1. 蛋白质：肉类、鱼类、蛋类
2. 碳水化合物：米饭、番薯、燕麦
3. 脂肪：鱼油、植物油
4. 维生素和矿物质：蔬菜、水果

喂食原则：
- 定时定量喂食
- 根据年龄调整食量
- 保证充足的饮水
- 避免人类食物

禁忌食物：
- 巧克力、洋葱、葡萄
- 咸味过重的食物
- 生鸡蛋和生鱼
- 酒精类饮品`,
    tags: ['宠物营养', '健康饮食', '食品安全'],
    readCount: 1650,
    likeCount: 98
  },
  {
    id: 11,
    title: '宠物皮肤病预防与治疗',
    date: '2025-09-13',
    category: 'knowledge',
    author: '皮肤科专家',
    summary: '常见宠物皮肤问题的识别和处理方法',
    content: `宠物皮肤病是常见问题，早期预防和治疗非常重要：

常见皮肤病：
1. 真菌感染
2. 细菌性皮炎
3. 过敏性皮炎
4. 寄生虫感染

预防措施：
- 定期洗澡和梳理
- 保持生活环境清洁
- 使用专用宠物用品
- 定期体检和驱虫

治疗原则：
- 及时就医确诊
- 按医嘱用药
- 注意隔离传染性疾病
- 调整饮食和环境`,
    tags: ['皮肤病', '疾病预防', '宠物健康'],
    readCount: 1420,
    likeCount: 76
  },
  {
    id: 12,
    title: '老年宠物护理要点',
    date: '2025-09-13',
    category: 'knowledge',
    author: '老年宠物专家',
    summary: '如何照顾年迈的宠物，让它们安享晚年',
    content: `老年宠物需要特别的关爱和照护：

生理变化：
- 活动能力下降
- 免疫力减弱
- 感官功能衰退
- 代谢缓慢

护理要点：
1. 调整饮食：易消化、高营养
2. 适量运动：避免剧烈活动
3. 定期体检：及早发现疾病
4. 舒适环境：温暖、安静

常见老年病：
- 关节炎
- 心脏病
- 肾脏疾病
- 认知功能障碍

情感支持：
- 更多陪伴和关爱
- 保持规律的生活
- 耐心对待行为变化`,
    tags: ['老年宠物', '护理指南', '健康管理'],
    readCount: 1320,
    likeCount: 89
  },
  {
    id: 13,
    title: '宠物急救常识',
    date: '2025-09-13',
    category: 'knowledge',
    author: '急救专家',
    summary: '掌握基本的宠物急救知识，关键时刻能救命',
    content: `掌握基本急救知识可能拯救宠物生命：

常见急救情况：
1. 外伤出血
2. 中毒
3. 窒息
4. 休克

急救包准备：
- 纱布和绷带
- 止血钳和剪刀
- 体温计
- 紧急联系方式

基本处理原则：
- 保持冷静
- 评估伤情
- 简单包扎止血
- 立即送医

特别提醒：
- 不要给昏迷宠物喂水
- 避免移动脊椎受伤的宠物
- 记录症状和时间
- 联系专业兽医`,
    tags: ['急救知识', '紧急处理', '安全防护'],
    readCount: 1890,
    likeCount: 145
  },
  {
    id: 14,
    title: '宠物行为训练技巧',
    date: '2025-09-13',
    category: 'knowledge',
    author: '行为训练师',
    summary: '科学的方法训练宠物良好行为习惯',
    content: `良好的行为训练让宠物更好融入家庭生活：

基本训练原则：
1. 正面强化：奖励好行为
2. 一致性：家庭成员统一标准
3. 耐心：重复练习建立习惯
4. 及时性：行为发生时立即反应

基础训练项目：
- 坐下、趴下、等待
- 定点排便
- 不乱咬东西
- 安静不叫

高级训练：
- 握手、转圈等技能
- 社会化训练
- 复杂指令执行

注意事项：
- 避免体罚
- 保持训练乐趣
- 循序渐进
- 及时调整方法`,
    tags: ['行为训练', '宠物教育', '习惯养成'],
    readCount: 1750,
    likeCount: 112
  },
  {
    id: 15,
    title: '宠物冬季保暖指南',
    date: '2025-09-13',
    category: 'knowledge',
    author: '季节护理专家',
    summary: '冬季如何给宠物做好保暖工作',
    content: `冬季宠物保暖需要特别注意：

保暖措施：
1. 室内保温：适宜的室温
2. 宠物服装：质量好的保暖衣物
3. 窝垫选择：保暖透气的垫子
4. 饮食调整：增加热量摄入

不同宠物需求：
- 短毛犬：需要额外保暖
- 长毛犬：注意毛发护理
- 老年宠物：加强保暖措施
- 幼崽：特别注意温度控制

户外活动：
- 缩短散步时间
- 避免雨雪天气
- 注意爪子保护
- 及时擦干身体

健康监测：
- 观察精神状态
- 注意食欲变化
- 关注呼吸道健康
- 定期体温测量`,
    tags: ['冬季护理', '保暖措施', '季节健康'],
    readCount: 1560,
    likeCount: 87
  }
];

// 宠物新闻文章
const newsArticles = [
  {
    id: 1,
    title: '抵制大规模捕杀流浪狗',
    date: '2025-09-13',
    category: 'news',
    author: '动物保护协会',
    summary: '呼吁理性对待流浪动物问题，寻找人道解决方案',
    content: `近期某地区出现大规模捕杀流浪狗的事件，引起了社会广泛关注。动物保护组织呼吁采用更加人道的方式解决流浪动物问题。

流浪动物问题的根源：
- 宠物弃养行为增加
- 缺乏有效的绝育措施
- 管理体系不够完善
- 公众教育不足

人道解决方案：
1. 推广TNR项目（捕获-绝育-释放）
2. 加强领养宣传
3. 建立完善的收容体系
4. 提高公众责任意识

我们相信，通过科学管理和社会共同努力，能够找到既保护动物福利又维护公共安全的平衡点。`,
    tags: ['动物保护', '流浪动物', '社会问题'],
    readCount: 2500,
    likeCount: 189
  },
  {
    id: 2,
    title: '爱心企业捐助流浪动物救助站',
    date: '2025-09-13',
    category: 'news',
    author: '新闻记者',
    summary: '多家爱心企业联合捐助，支持流浪动物救助工作',
    content: `昨日，本市多家爱心企业联合向流浪动物救助站捐赠了价值50万元的物资和资金，用于改善流浪动物的生活条件。

捐赠内容包括：
- 专业宠物粮食10吨
- 医疗设备和药品
- 建设资金20万元
- 志愿者培训费用

救助站负责人表示，这些捐助将大大改善救助条件，能够帮助更多流浪动物得到妥善照顾。同时，也希望更多社会力量参与到动物保护事业中来。

参与企业代表表示，企业的发展离不开社会的支持，回馈社会、关爱动物是企业应尽的责任。`,
    tags: ['企业捐助', '社会责任', '动物福利'],
    readCount: 1800,
    likeCount: 145
  },
  {
    id: 3,
    title: '新法规加强宠物管理',
    date: '2025-09-13',
    category: 'news',
    author: '法律记者',
    summary: '新颁布的宠物管理条例将进一步规范宠物饲养行为',
    content: `市政府近日颁布了新的《宠物管理条例》，将于下月正式实施，旨在规范宠物饲养行为，保障公共安全和动物福利。

主要条款包括：
1. 宠物登记和身份识别
2. 强制免疫和健康检查
3. 公共场所行为规范
4. 弃养行为的法律责任

处罚措施：
- 未登记宠物：罚款500-2000元
- 不清理宠物粪便：罚款200元
- 恶意弃养：罚款5000元并承担救助费用

积极意义：
- 提高宠物主责任意识
- 减少流浪动物数量
- 改善社区环境
- 保护动物权益`,
    tags: ['法律法规', '宠物管理', '社会治理'],
    readCount: 2200,
    likeCount: 167
  },
  {
    id: 4,
    title: '志愿者团队获得表彰',
    date: '2025-09-13',
    category: 'news',
    author: '社区记者',
    summary: '优秀动物保护志愿者团队获得市政府表彰',
    content: `在第三届"爱心城市"表彰大会上，我市动物保护志愿者团队"流浪之家"获得了"优秀志愿服务团队"荣誉称号。

团队成就：
- 救助流浪动物500多只
- 成功送养率达到80%
- 组织公益活动100多场
- 培训志愿者1000多人次

团队负责人小李表示："这个荣誉不仅属于我们团队，更属于所有关爱动物的市民。我们会继续努力，让更多流浪动物找到温暖的家。"

市政府相关负责人表示，志愿者的无私奉献精神值得全社会学习，政府将继续支持动物保护工作。`,
    tags: ['志愿者', '表彰大会', '社会贡献'],
    readCount: 1650,
    likeCount: 123
  },
  {
    id: 5,
    title: '宠物医疗保险推广',
    date: '2025-09-13',
    category: 'news',
    author: '经济记者',
    summary: '宠物医疗保险业务在我市正式启动推广',
    content: `随着宠物饲养量的不断增加，宠物医疗保险业务在我市正式启动推广，为宠物主提供更全面的保障。

保险内容：
- 疾病治疗费用
- 意外伤害医疗
- 预防保健费用
- 第三者责任险

保险优势：
- 降低医疗费用负担
- 提供专业医疗网络
- 24小时急诊服务
- 便捷理赔流程

市场反响：
首批试点的三家保险公司表示，推出一周以来已有近500名宠物主咨询投保。预计这一业务将有效降低宠物主的经济压力，减少因医疗费用而弃养的情况。`,
    tags: ['宠物保险', '医疗保障', '市场发展'],
    readCount: 1400,
    likeCount: 89
  },
  {
    id: 6,
    title: '国际动物保护日活动',
    date: '2025-09-13',
    category: 'news',
    author: '活动记者',
    summary: '世界动物保护日主题活动在我市成功举办',
    content: `10月4日世界动物保护日当天，我市在中央公园举办了大型主题活动，吸引了上千名市民参与。

活动内容：
- 动物保护知识展览
- 宠物健康免费检查
- 领养活动现场
- 儿童教育互动

活动成果：
- 现场领养宠物15只
- 免费体检宠物200多只
- 发放宣传资料3000份
- 新增志愿者80多人

参与市民张女士表示："通过活动学到了很多动物保护知识，也更加理解了流浪动物的困境。我已经决定领养一只小狗。"

主办方表示，将把这样的活动常态化，提高全民动物保护意识。`,
    tags: ['公益活动', '动物保护日', '社会教育'],
    readCount: 1900,
    likeCount: 156
  }
];

// 救助案例数据
const cats = [
  {
    id: 80,
    name: '大宝',
    image: '/images/20230423/1682256877856387.jpg',
    status: '救助中',
    age: '2岁',
    gender: '雄性',
    health: '健康良好',
    character: '亲人温顺，喜欢被抚摸',
    rescueDate: '2025-08-15',
    rescueLocation: '市中心小区',
    description: '大宝是在小区垃圾桶旁发现的，当时身体虚弱，经过精心照料现在已经恢复健康。'
  },
  {
    id: 78,
    name: '小花',
    image: '/images/20230423/1682256770898273.jpg',
    status: '救助中',
    age: '1.5岁',
    gender: '雌性',
    health: '正在治疗中',
    character: '胆小但温柔',
    rescueDate: '2025-08-20',
    rescueLocation: '城郊工地',
    description: '小花在工地上被发现，后腿有轻微外伤，正在接受治疗。'
  }
];

const dogs = [
  {
    id: 79,
    name: '琪琪',
    image: '/images/20230423/1682256826549167.jpg',
    status: '救助中',
    age: '3岁',
    gender: '雌性',
    health: '健康良好',
    character: '活泼友好，喜欢和人玩耍',
    rescueDate: '2025-08-10',
    rescueLocation: '公园附近',
    description: '琪琪是一只非常友好的狗狗，被发现时正在公园里寻找食物。'
  },
  {
    id: 74,
    name: '旺财',
    image: '/images/20230423/1682257069276480.jpg',
    status: '救助中',
    age: '4岁',
    gender: '雄性',
    health: '康复中',
    character: '忠诚勇敢',
    rescueDate: '2025-07-25',
    rescueLocation: '工业区',
    description: '旺财被发现时营养不良，现在正在康复中，性格非常好。'
  }
];

const others = [
  {
    id: 77,
    name: '路奇',
    image: '/images/20230423/1682256728449555.jpg',
    status: '救助中',
    type: '兔子',
    age: '1岁',
    gender: '雄性',
    health: '健康良好',
    character: '温顺可爱',
    rescueDate: '2025-08-18',
    rescueLocation: '学校附近',
    description: '路奇是一只被遗弃的宠物兔，现在住在我们的小动物区域。'
  }
];

// 联系信息
const contactInfo = {
  name: '贫僧',
  phone: '暂无',
  tel: '400-123-4567',
  fax: '0123-1234567',
  email: '495102569@qq.com',
  address: '翻斗大街翻斗花园2号楼1001室',
  postcode: '100000',
  workingHours: '周一至周日 9:00-18:00',
  emergencyContact: '24小时急救热线：400-999-8888'
};

// 网站配置
const siteConfig = {
  siteName: '流浪动物之家',
  welcomeMessage: '欢迎来到流浪动物之家！',
  slogan: '让每一只流浪动物都能感受到爱与温暖',
  established: '2021年',
  mission: '救助流浪动物，传播爱心文化',
  vision: '建设人与动物和谐共处的美好世界',
  socialMedia: {
    weibo: '@流浪动物之家',
    wechat: 'pet-rescue-home',
    qq: '495102569'
  }
};

// 初始化所有数据文件
async function initAllData() {
  await ensureDataDir();
  
  const dataFiles = [
    { filename: 'adoptionCases.json', data: adoptionCases },
    { filename: 'knowledgeArticles.json', data: knowledgeArticles },
    { filename: 'newsArticles.json', data: newsArticles },
    { filename: 'cats.json', data: cats },
    { filename: 'dogs.json', data: dogs },
    { filename: 'others.json', data: others },
    { filename: 'contactInfo.json', data: contactInfo },
    { filename: 'siteConfig.json', data: siteConfig },
    { filename: 'guestbook.json', data: [] } // 空的留言数据
  ];
  
  for (const { filename, data } of dataFiles) {
    const filePath = path.join(DATA_DIR, filename);
    await fs.writeFile(filePath, JSON.stringify(data, null, 2), 'utf8');
    console.log(`✅ 已创建数据文件: ${filename}`);
  }
  
  console.log('🎉 所有数据文件初始化完成！');
}

// 运行初始化
initAllData().catch(console.error);
